// map.js
// / => 小程序根目录 但是不能再引入文件时使用
// import qqmap from '/utils/map.js'
import qqmap from '../../../utils/map.js'

Page({
  onLoad({ id }) {
    this.getDetail(id)

    // 路线规划 => 交通工具 / 起点经纬度 / 重点经纬度
    // console.log(qqmap)

    const _this = this
    qqmap.direction({
      mode: 'driving',
      from: '31.035065,121.595913', // 苏杭(师傅)
      to: '31.034871,121.612067', // 黑马(目标)

      success: function (res) {
        // 哪怕是别人给你规划好了路线 但是这里面的数据过于专业 根本无法处理
        console.log(res)
        var ret = res
        var coors = ret.result.routes[0].polyline,
          pl = []
        //坐标解压（返回的点串坐标，通过前向差分进行压缩）
        var kr = 1000000
        for (let i = 2; i < coors.length; i++) {
          coors[i] = Number(coors[i - 2]) + Number(coors[i]) / kr
        }
        //将解压后的坐标放入点串数组pl中
        for (let i = 0; i < coors.length; i += 2) {
          pl.push({ latitude: coors[i], longitude: coors[i + 1] })
        }
        console.log(pl)
        //设置polyline属性，将路线显示出来,将解压坐标第一个数据作为起点
        _this.setData({
          latitude: pl[0].latitude,
          longitude: pl[0].longitude,
          // polyline 规划好的一个个路径点
          polyline: [
            {
              points: pl,
              color: '#FF0000DD',
              width: 4,
            },
          ],
        })
      },
    })
  },

  async getDetail(id) {
    if (!id) return
    const res = await wx.http.get(`/repair/${id}`)
    // console.log(res)
    if (res.code !== 10000) return wx.utils.toast()

    this.setData({ ...res.data })
  },
  open() {
    this.setData({
      dialogVisible: true,
    })
  },

  goForm() {
    wx.navigateTo({
      url: '/repair_pkg/pages/form/index?id=' + this.data.id,
    })
  },

  async dialogClose(ev) {
    // console.log(ev)
    if (ev.detail === 'confirm') {
      // 取消

      const res = await wx.http.put(`/cancel/repaire/${this.data.id}`)
      console.log(res)
      if (res.code !== 10000) return wx.utils.toast('取消失败')

      wx.navigateBack()
    }
  },

  data: {
    dialogVisible: false,

    // 黑马程序员经纬度
    latitude: 31.034871,
    longitude: 121.612067,
    // 苏杭的经纬度
    // latitude: 31.035065,
    // longitude: 121.595913,

    // 地图标记物
    markers: [
      // 每一个标记物都是一个对象
      {
        id: 1,
        latitude: 31.034871,
        longitude: 121.612067,
        width: 24,
        height: 40,
      },
      {
        id: 2,
        latitude: 31.035065,
        longitude: 121.595913,
        width: 40,
        height: 40,
        iconPath: '/static/images/marker.png',
      },
    ],
  },
})
